Polar codes are a class of capacity-achieving codes with explicit construction. Polar codes can be decoded using different techniques. In flash memories, log likelihood ratio values are conventionally computed for memory cells by sensing flash channels with multiple reference thresholds. However, conventional polar decoders do not work using the log likelihood ratio values as direct input values.